package com.emmmya.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.RetentionPolicy.RUNTIME;

/**
 * 内置函数修饰注解，内置函数必须是静态方法
 * @author harin
 * @version 1.0
 * @date 2022-03-28 16:22:34
 */
@Retention(RUNTIME)
@Target(ElementType.METHOD)
public @interface ExpressionMethod {
    /**
     * 内置函数别名，如不设置则为java中的函数
     * @return
     */
    String alias();

    /**
     * 参数
     */
    String[] parameter() default "";

    /**
     * 前置函数,必须以()结束如： forBefore()
     */
    String before() default "";

    /**
     * 置后执行
     */
    boolean after() default false;


}
